A common method for localization of a sound in three-dimensional (3-D) space is to apply a Head Related Transfer Function (HRTF) to the data representative of the sound. However, HRTFs are commonly implemented using long finite impulse response (FIR) filters, which are costly in the terms of memory and processing effort and/or time. This cost is further exacerbated when a HRTF is applied to a plurality of sound sources, or “voices”. For example, if 32 stereo voices having a sample rate of 44.1 kHz are to be processed using a HRTF with 32 coefficients, a total of 90,316,800 samples (44.1 kHz * 2 channels/voice * 32 voices * 32 coefficients) must be processed per second, a rate that could severely tax many audio processing systems.
To avoid the difficulties inherent with common methods of using long FIR filters to apply a HRTF, methods using shorter infinite impulse response (IIR) filters to implement a HRTF have been developed. However, IIR filters introduce other difficulties. One difficulty common to this solution is that the shorter IIR filters often produce sound localization results of insufficient quality or precision. Another difficulty is that IIR filters are generally much less stable than FIR filters, especially during transitions between sets of coefficients. In order to avoid instability in IIR filters, the precision of the IIR filter must be increased, thereby reducing or eliminating the lower processing effort benefit of a short IIR filter over a long FIR filter.
Given these limitations, as discussed, it is apparent that a more efficient method and/or system for localization of sounds in three-dimensional space would be advantageous.